package com.tancire.question.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.tancire.common.annotation.Excel;
import com.tancire.common.core.domain.BaseEntity;

/**
 * 答题题目对象 train_problem
 *
 * @author tancire
 * @date 2024-10-09
 */
public class TrainProblem extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 类型ID
     */
    @Excel(name = "类型ID")
    private Long typeId;

    /**
     * 题目
     */
    @Excel(name = "题目")
    private String problemTitle;

    /**
     * 答题类型 0 单选 1 多选 2 填空
     */
    @Excel(name = "答题类型 0 单选 1 多选 2 填空")
    private Integer answerType;

    /**
     * 答案1
     */
    @Excel(name = "答案1")
    private String answerOne;

    /**
     * 答案2
     */
    @Excel(name = "答案2")
    private String answerTwo;

    /**
     * 答案3
     */
    @Excel(name = "答案3")
    private String answerThree;

    /**
     * 答案4
     */
    @Excel(name = "答案4")
    private String answerFour;

    /**
     * 答案5
     */
    @Excel(name = "答案5")
    private String answerFive;

    /**
     * 真实答案
     */
    @Excel(name = "真实答案")
    private String realAnswer;

    /**
     * 问题分数
     */
    @Excel(name = "问题分数")
    private Integer problemScore;

    /**
     * 难度 0 简单 1 中等 2 困难
     */
    @Excel(name = "难度 0 简单 1 中等 2 困难")
    private Integer problemDifficulty;

    /**
     * 0 正常  1 删除  真删除，字段保留
     */
    private Long delFlag;

    /**
     * 题目序号
     */
    private Integer num;

    /**
     * 用于标记活动ID
     */
    private Long activityId;

    public Long getActivityId() {
        return activityId;
    }

    public void setActivityId(Long activityId) {
        this.activityId = activityId;
    }

    public Integer getNum() {
        return num;
    }

    public void setNum(Integer num) {
        this.num = num;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setTypeId(Long typeId) {
        this.typeId = typeId;
    }

    public Long getTypeId() {
        return typeId;
    }

    public void setProblemTitle(String problemTitle) {
        this.problemTitle = problemTitle;
    }

    public String getProblemTitle() {
        return problemTitle;
    }

    public void setAnswerType(Integer answerType) {
        this.answerType = answerType;
    }

    public Integer getAnswerType() {
        return answerType;
    }

    public void setAnswerOne(String answerOne) {
        this.answerOne = answerOne;
    }

    public String getAnswerOne() {
        return answerOne;
    }

    public void setAnswerTwo(String answerTwo) {
        this.answerTwo = answerTwo;
    }

    public String getAnswerTwo() {
        return answerTwo;
    }

    public void setAnswerThree(String answerThree) {
        this.answerThree = answerThree;
    }

    public String getAnswerThree() {
        return answerThree;
    }

    public void setAnswerFour(String answerFour) {
        this.answerFour = answerFour;
    }

    public String getAnswerFour() {
        return answerFour;
    }

    public void setAnswerFive(String answerFive) {
        this.answerFive = answerFive;
    }

    public String getAnswerFive() {
        return answerFive;
    }

    public void setRealAnswer(String realAnswer) {
        this.realAnswer = realAnswer;
    }

    public String getRealAnswer() {
        return realAnswer;
    }

    public void setProblemScore(Integer problemScore) {
        this.problemScore = problemScore;
    }

    public Integer getProblemScore() {
        return problemScore;
    }

    public void setProblemDifficulty(Integer problemDifficulty) {
        this.problemDifficulty = problemDifficulty;
    }

    public Integer getProblemDifficulty() {
        return problemDifficulty;
    }

    public void setDelFlag(Long delFlag) {
        this.delFlag = delFlag;
    }

    public Long getDelFlag() {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("typeId", getTypeId())
                .append("problemTitle", getProblemTitle())
                .append("answerType", getAnswerType())
                .append("answerOne", getAnswerOne())
                .append("answerTwo", getAnswerTwo())
                .append("answerThree", getAnswerThree())
                .append("answerFour", getAnswerFour())
                .append("answerFive", getAnswerFive())
                .append("realAnswer", getRealAnswer())
                .append("problemScore", getProblemScore())
                .append("problemDifficulty", getProblemDifficulty())
                .append("createTime", getCreateTime())
                .append("createBy", getCreateBy())
                .append("updateTime", getUpdateTime())
                .append("updateBy", getUpdateBy())
                .append("delFlag", getDelFlag())
                .toString();
    }
}
